from package.mylib import mylib
import time,re
def del_remind(timelist,say,listen,be_overdue=False):
    ##检测时间是否失效
    if be_overdue:
        number=-1
        for x in timelist:
            number+=1
            #字典
            for  y in x:
                
                if int(y)==1 and time.time() >= x[y][0]:
                    say_dtat = "已经删除过期提醒"+time.strftime( "%Y-%m-%d %H点%M分%S秒", time.localtime(x[y][0]) ) + x[y][1]
                    say_dtat = say_dtat.replace("00分",'',1).replace("00秒",'',1) 
                    say(say_dtat)
                    timelist.pop(number)
        return True

    if not timelist:
        say("没有设置提醒")
        return False

    #语音描述当前闹钟
    Speech_description =[]
    #记录数字
    number=0
    for x in timelist:
        number+=1
        for y in x:
            if int(y)==1:
                #重复
                #{0:[12,35,00,'起床']}
                #一次性
                #{1:[12345,'起床']} 
                say_dtat = time.strftime( "第{0}个：%Y-%m-%d %H点%M分%S秒{1}".format( number,x[y][1] ), time.localtime(x[y][0]) )
                say_dtat = say_dtat.replace("00分",'',1).replace("00秒",'',1) 
                #添加到语音播放
                Speech_description.append( say_dtat )
            elif int(y)==0:
                say_dtat = "第{0}个:每天{1}点{2}分{3}".format(  number, x[y][0], x[y][1], x[y][3] )
                say_dtat = say_dtat.replace("00分",'',1)
                #添加到语音播放
                Speech_description.append( say_dtat )

            # elif y==2:

            #     say_dtat = "第"+number+"个:"+str(x[2][0])+"年"+str(x[2][1])+"月"+str(x[2][2])+"日"+str(x[2][3])+"点"+str(x[2][4])+"分"+str(x[2][6])
            #     say_dtat = say_dtat.replace("00分",'',1)
            #     #添加到语音播放
            #     Speech_description.append( say_dtat )

    say("现在有{0}个提醒,你要删除哪个？".format(len(timelist)))

    for x in Speech_description:
        say(x)
    
    # 语音交互一
    plugtext = listen() 
    if plugtext.count("全部") or plugtext.count("所有"):
        say("已经删除所有提醒")
        timelist.clear()
        return True

    elif plugtext:
        # 语音交互1
        plugtext = mylib.ChineseNum2Arab(plugtext )
        if plugtext :
            #["1"]
            plugtext = re.findall(r'(\d+)', plugtext)
            if plugtext:
                if int(plugtext[0]) <= number and int(plugtext[0]) >= 1:
                    #重复
                    #{0:[12,35,00,'起床']}
                    #一次性
                    #{1:[12345,'起床']}
                    data = timelist[int(plugtext[0])-1]
                    for x in data:
                        if int(x)==1:
                            say_dtat = time.strftime("已经删除第{0}个：%Y-%m-%d %H点%M分%S秒{1}".format(plugtext[0],data[x][1] ), time.localtime( data[x][0] ))
                            say_dtat = say_dtat.replace("00分",'',1).replace("00秒",'',1) 
                        if int(x)==0:
                            say_dtat ="已经删除第{0}个:每天{1}点{2}分{3}".format(plugtext[0],data[x][0],data[x][1],data[x][3])
                            say_dtat = say_dtat.replace("00分",'',1) 

                    say(say_dtat)
                    timelist.pop(int(plugtext[0])-1)
                    return True

    say("没有删除成功")
    return False